The invention relates to the processing of e-mail message headers in a network-computing environment. In particular, the invention relates to the generation and display of user-interface formatting specifications carried in e-mail message headers.
In a computer network, it is necessary to display a human-readable interface (xe2x80x9cthe interfacexe2x80x9d) for e-mail messages transmitted between computers. A program which receives and/or processes e-mail normally displays the interface by reading descriptive information in the message and combining it with program resources such as typefaces, icons, patterns, color palettes, and controls. The human operator (xe2x80x9cthe userxe2x80x9d) interacts with the resulting display to gain access to and manipulate the message. The formal display attributes, i.e., the formatting, of the interface are generally consistent when sender and recipient use the same hardware and/or software. However, when a message leaves its native environment, interface formatting is lost. The Internet, a specific computer network, is a world-wide interconnection of computers, or servers, in business, academic, commercial, and personal use. A significant reason for the dramatic growth in the use of the Internet is the standardization and use of common protocols for the presentation and exchange of information. The use of common protocols allows almost anyone with access to a networked computing device, i.e., a computer, to connect to, and interact with, the Internet, regardless of the type of computer hardware and software an individual computer might employ.
Internet programs rely on common languages and supporting protocols to specify data for network resources. For example, the Hypertext Markup Language (xe2x80x9cHTMLxe2x80x9d) specifies data formatting for pages on the World Wide Web (xe2x80x9cthe Webxe2x80x9d). Other languages important to the present invention include Extensible Markup Language (xe2x80x9cXMLxe2x80x9d) for describing data structures that extend current Internet markup languages. The Universal Resource Locator standard (xe2x80x9cURLxe2x80x9d) provides a common way to describe inter-network data pathways. Finally, the standard for Multipurpose Internet Mail Extensions (xe2x80x9cMIMExe2x80x9d) provides e-mail programs with a common framework for structuring the content of Internet-mail messages.
The standard protocol of Internet e-mail is known as the Simple Mail Transfer Protocol (xe2x80x9cSMTPxe2x80x9d). There are currently several versions of SMTP with more recent versions being backward-compatible to earlier versions. All versions of SMTP share the same basic organization, and all messages transmitted using SMTP, i.e., Internet e-mail, share the same basic structure.
An Internet e-mail message is comprised of two parts: headers and content. First are the headers, which together form the outside xe2x80x9cenvelopexe2x80x9d (the xe2x80x9ce-envelopexe2x80x9d) of the message. Second is the content, which is what one sees when one opens the message.
The primary function of the message headers is for routing the message from one computer to another. A secondary function of the headers is to carry an interface for the message, such as a subject line. In the past, interfaces for message headers and content were restricted to plain text. However, as the uses of e-mail have spread beyond interoffice memos to include the transmission of all kinds and types of communication, the demand for richer and more dynamic forms of information has lead to the adoption of HTML formatting for e-mail message content. The content of an e-mail message can now be as unique and rich as a Web page. Formatting for message headers, however, has not changed.
Internet e-mail message headers contain a series of fields. Some examples of common fields are xe2x80x9cSubjectxe2x80x9d, xe2x80x9cFromxe2x80x9d and xe2x80x9cToxe2x80x9d. Programs which receive and/or process e-mail messages use the data in these fields to display lists of e-mail e-envelopes. A person who wants to view an e-mail message selects an e-envelope in a manner consistent with the use of a conventional envelope.
As demonstrated by simulated screen shot 600 of FIG. 6, most e-mail programs, such as Microsoft""s Outlook Express, display e-envelopes in a scrolling textual list. Other programs, such as Microsoft""s Bob Email, present e-envelopes as a stack of overlapping graphical conventional envelopes. Regardless of the method used to display them, e-envelopes for all messages are displayed the same way in any given program which receives and processes e-mail messages. There is no visual distinction based on the kind of e-mail as there is in the real world. Furthermore, since e-envelope formatting specifications are not carried with the message, the e-envelope interface will change when the message leaves its original program or network and arrives somewhere else.
In the physical world, conventional envelopes (and their variants) are designed to carry different kinds of information, much of which is private. These variants include postcards, letters, security envelopes, mailers, packages, etc. In addition, conventional envelopes are customizable, allowing senders to make their mailings more distinctive while helping recipients distinguish pieces of mail without opening them. Finally, conventional envelopes are universally significant artifacts with surfaces for affixing or stamping signifiers of the systems by which they are delivered. None of these important features of conventional mail are available to senders and recipients of Internet e-mail.
The present invention addresses these shortcomings. The main object and advantage of the present invention is to provide a method that makes it possible for people to use e-envelopes in a manner nearly identical to how conventional envelopes are used.
Various other objects, advantages and features of the present invention will become readily apparent from the ensuing detailed description and the novel features will be particularly pointed out in the appended claims.
A method of generating graphical user interfaces for e-mail messages in which an e-mail message having an e-mail body and an e-mail header is first generated and then formatting associated with the e-mail message is selected for display. Next, the e-mail message is modified by inserting the formatting into the e-mail header. The modified e-mail message is saved to memory. Thereafter, the formatting associated with the e-mail message is displayed in graphical format to allow selection of the e-mail message.
In accordance with the present invention, people can modify the e-envelope of each Internet e-mail message in much the same way that they can and do with conventional mail. This is done through the use of special header fields called xe2x80x9cForm Headers.xe2x80x9d Form Headers provide formatting specifications for data carried in the e-mail message. Three sources of data apply. First and most typical is data read from other message headers normally present such as message date, sender, subject line, etc. (xe2x80x9cData Headersxe2x80x9d). Second is data read from the message content, such as a note or image to be displayed on the surface of a post card. Third is data inferred from the message, such as its size-on-disk or whether it has been received or not. Data to be formatted may be read literally or as a reference to something else, such as a URL for an image file available over the Internet. By using the present invention, senders gain more control over the presentation of Internet e-mail messages using formatted e-envelopes. Recipients also benefit because formatted e-envelopes make Internet e-mail richer, more informative, more intuitive, and easier to use.
In a further aspect, at least one Form Header is generated based upon the selected formatting and then the Form Header is inserted into the e-mail header and the display of the formatting requires that the at least one Form Header be first extracted from the e-mail header of the modified e-mail message and then that the formatting be extracted from the at least one Form Header for display. Preferably, at least one of the at least one Form Headers is linked to Data Headers within the e-mail header such that the generated graphical user interface includes formatting applied to data associated with the Data Headers.
A benefit of storing e-envelope formatting specifications in the message headers instead of the message content is that many programs which receive and/or process e-mail scan only the headersxe2x80x94which will normally fit easily into memoryxe2x80x94when presenting messages to the user. Only when the user chooses to open a message is the contentxe2x80x94which will often be too large to fit easily into memoryxe2x80x94read as well. Putting e-envelope formatting specifications in the headers will enable these programs to display formatted e-envelopes where they otherwise could not.
The separation of Form Headers from the data they modify has advantages as well. One major advantage is due to the fact that the data in some headers may be modified and new headers may be added as the message works its way along the Internet. Separating Form and Data Headers makes it possible to display these dynamic headers as part of the e-envelope interface, e.g., as postmarks or stamps. Also, using separate Form Headers allows formatting to be introduced without touching data that may be structured according to SMTP, MIME, or another protocol or language, thereby avoiding the risk of header data corruption.
In a further embodiment of the present invention, headers inserted solely for interface-specific data (xe2x80x9cExtra Data Headersxe2x80x9d) are used for interface graphics or text that provide additional customization of the e-envelope interface. For example, Extra Data Headers may be used to customize the display of a standard business e-envelope interface by adding a graphical logo and a textual caption, e.g., xe2x80x9cOffer expires Dec. 21, 2001!xe2x80x9d
As a result of using the present invention, senders gain control over the formatting of every e-envelope they send. For recipients, formatted e-envelopes are easier to distinguish in a list, making it possible to sort incoming mail without having to open and read each piece first. Developers of programs which receive and/or process Internet e-mail who apply the present invention will be able to provide their users with richer and more flexible e-envelope interfaces, adding significant value to their products and services. For all, the present invention allows e-envelopes to be displayed consistently in different computer programs and networks, dramatically extending the capabilities of e-mail communications.